//
//  StatusListViewModel.swift
//  Weibo10
//
//  Created by mac on 16/8/15.
//  Copyright © 2016年 itheima. All rights reserved.
//

import Foundation


// 微博数据列表模型 － 封装网络方法
class StatusListViewModel {
    
    // 微博数据数组 上拉/下拉刷新
    lazy var statusList = [StatusViewModel]()
    
    // 加载数据
    func loadStatus(finished: (isSuccessed: Bool) ->()) {
        
        NetworkTools.sharedTools.loadStatus { (result, error) -> () in
            
            // 判断error是否有值
            if error != nil {
                finished(isSuccessed: false)
                
                return
            }
            
            // 判读result的数据格式是否正确
            guard let array = result?["statuses"] as?[[String: AnyObject]] else {
                
                finished(isSuccessed: false)
                return
            }
            
            // 可变字典的数组
            var dataList = [StatusViewModel]()
            
            // 遍历数组
            for dict in array {
                dataList.append(StatusViewModel(status: Status(dict:dict)))
            }
            
            // 拼接数据
            self.statusList = dataList + self.statusList
            
            // 完成回调
            finished(isSuccessed: true)
        }
    }
    
}